home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-04-25 | 3.5 KB | 120 lines | [TEXT/MPS ] |
- //========================================================================================
- //
- // File: FWPrHdlr.h
- // Release Version: $ ODF 1 $
- //
- // Copyright: (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
- //
- //========================================================================================
-
- #ifndef FWPRHDLR_H
- #define FWPRHDLR_H
-
- #ifndef FWEVENTH_H
- #include "FWEventH.h"
- #endif
-
- //========================================================================================
- // Forward Declarations
- //========================================================================================
-
- struct Environment;
-
- class FW_CPrintInfo;
- class FW_CPrintEnvironment;
- class FW_CFrame;
- class FW_CRect;
- class FW_CView;
- class FW_CPart;
- class FW_CString;
-
- //========================================================================================
- // class FW_CPrintHandler
- //========================================================================================
-
- class FW_CPrintHandler : public FW_MEventHandler
- {
- //----------------------------------------------------------------------------------------
- // Constructors/Destructor
- //
- public:
- FW_CPrintHandler(FW_CPart* part, FW_CFrame* frame);
- virtual ~FW_CPrintHandler();
-
- //----------------------------------------------------------------------------------------
- // Inherited API
- //
- public:
- virtual FW_Boolean DoAdjustMenus(Environment *ev, FW_CMenuBar* menuBar, FW_Boolean hasMenuFocus, FW_Boolean isRoot);
- virtual FW_Boolean DoMenu(Environment* ev, const FW_CMenuEvent& theMenuEvent);
-
- //----------------------------------------------------------------------------------------
- // New API
- //
- // ----- Overridables - printing
- protected:
- virtual FW_Boolean IsCurrentlyPrintable(Environment* ev) const;
- virtual void GetPrintContentExtent(Environment* ev, FW_CPoint& extent) const;
- virtual void PrintPage(Environment* ev, ODFacet* facet, const FW_CRect& pageBounds, long xPage, long yPage);
-
- // ----- Overridables - dialogs
- public:
- virtual void CreateProgressDialog(
- Environment* ev,
- ODFrame* frame,
- long numPages,
- const FW_CString& title);
-
- virtual void DestroyProgressDialog(
- Environment* ev,
- ODFrame* frame);
-
- virtual void UpdateProgressDialog(
- long pageNumber);
- protected:
-
- virtual FW_Boolean DoPageSetupDialog(Environment* ev);
- virtual FW_Boolean DoJobDialog(Environment* ev);
- virtual void NotifyNoDefaultPrinter(Environment* ev);
- virtual void NotifyPrintingCanceled(Environment* ev);
-
-
- public:
- // ----- Operations
- void HandlePageSetup(Environment* ev);
- void HandlePrint(Environment* ev);
-
- // ----- Attributes
- FW_CPart* GetPart() const;
- FW_CFrame* GetFrame() const;
- FW_CView* GetPrintView() const;
-
- // ----- Overridables - printing
- protected:
- virtual void GetPrintJobTitle(Environment* ev, FW_CString& jobTitle) const;
-
- virtual FW_CView* CreatePrintView(Environment* ev);
- virtual void ReleasePrintView(Environment* ev);
-
- virtual void PrintDocument(Environment* ev, FW_CPrintEnvironment* printEnv);
- virtual void CountPrintPages(Environment* ev, long& xPageCount, long& yPageCount);
-
- // ----- Helpers
- FW_Boolean PreModalDialog(Environment* ev);
- void PostModalDialog(Environment* ev);
-
- private:
- FW_CPrintInfo* GetPrintInfo() const;
-
- //----------------------------------------------------------------------------------------
- // Data Members
- //
- private:
- FW_CPart* fPart;
- FW_CFrame* fFrame;
- FW_CView* fPrintView;
- };
-
- #endif
-
-